import QtQuick 2.15
import QtQuick.Controls 2.15
import QtQuick3D 6.2
import QtQuick3D.Helpers 6.2
import Quick3DAssets.Drillingrig

Rectangle {
    id: view3d
    width: 774
    height: 472
    color: "#c1021f3f"
    property bool canTakeDrill: false   //托盘上的钻杆
    property bool takedDrill: false     //抓手上的钻杆
    property bool dropDrill: true      //推进架上钻杆1
    property bool headDrill: true      //头部钻杆，推进架上的外侧
    property bool pullDrill: false
    property bool pushDrill: false
    function resetMdot3(){
        let angle  = Math.abs(drillingrig.mdot3.eulerRotation.z);
        let duraction = angle / 5 * 1000;
        mdot3Animation2.duration = duraction;
        // mdot3Animation2.start();
    }

    function startMdot3(){
        let angle = Math.abs(drillingrig.mdot3.eulerRotation.z - drillingrig.mdot1.eulerRotation.z);
        let duraction = angle / 5 * 1000;
        mdot3Animation.duration = duraction;
        // mdot3Animation.start();
    }

    function startMdot7(){
        mdot7Animation.start();
    }

    function resetMdot7(){
        mdot7Animation2.start();
    }

    function playFronttongsOpen(){
        fronttongsOpen.start();
    }

    function playFronttongsClose(){
        fronttongsClose.start();
    }

    function playBacktongsOpen(){
        backtongsOpen.start();
    }

    function playBacktongsClose(){
        backtongsClose.start();
    }

    function calibrateMg3(){
        drillingrig.mg_3.position.x = 1351;
    }

    function playBracketOpen(){
        bracketOpen.start();
    }

    function playBracketClose(){
        bracketClose.start();
    }

    function playDrillBoxUp(){
        drillBoxUp.start();
    }
    function playDrillBoxDown(){
        drillBoxDown.start();
    }

    function playMdot6Left(){
        mdot6Left.start();
    }

    function playMdot6Right(){
        mdot6Right.start();
    }

    Item {
        id: __materialLibrary__
    }

    NumberAnimation {
        id: mdot6Right
        target: drillingrig.mdot6
        property: "position.x"
        duration: 5000
        to: -320
        easing.type: Easing.InOutQuad
    }

    NumberAnimation {
        id: mdot6Left
        target: drillingrig.mdot6
        property: "position.x"
        duration: 5000
        to: 166
        easing.type: Easing.InOutQuad
    }
    NumberAnimation {
        id: drillBoxUp
        target: drillingrig.mdot12
        property: "position.y"
        to: 745
        duration: 1500
        easing.type: Easing.InOutQuad
    }

    NumberAnimation {
        id: drillBoxDown
        target: drillingrig.mdot12
        property: "position.y"
        to: 615
        duration: 1500
        easing.type: Easing.InOutQuad
    }

    ParallelAnimation{
        id: bracketOpen
        NumberAnimation {
            target: drillingrig.mdot13
            property: "position.x"
            to: 398
            duration: 5000
            easing.type: Easing.InOutQuad
        }

        NumberAnimation {
            target: drillingrig.mdot14
            property: "position.x"
            duration: 5000
            to: -400
            easing.type: Easing.InOutQuad
        }
    }
    ParallelAnimation{
        id: bracketClose
        NumberAnimation {
            target: drillingrig.mdot13
            property: "position.x"
            to: 298
            duration: 5000
            easing.type: Easing.InOutQuad
        }

        NumberAnimation {
            target: drillingrig.mdot14
            property: "position.x"
            duration: 5000
            to: -302
            easing.type: Easing.InOutQuad
        }
    }

    NumberAnimation {
        id: mdot3Animation2
        target: drillingrig.mdot3
        property: "eulerRotation.z"
        duration: 2000
        easing.type: Easing.InOutQuad
        to: 0
    }
    NumberAnimation {
        id: mdot3Animation
        target: drillingrig.mdot3
        property: "eulerRotation.z"
        duration: 2000
        easing.type: Easing.InOutQuad
        to: drillingrig.mdot1.eulerRotation.z
    }
    NumberAnimation{
        id: mdot7Animation
        target: drillingrig.mdot7
        property: "position.y"
        duration: 7000
        easing.type: Easing.InOutQuad
        to: 511
    }

    NumberAnimation{
        id: mdot7Animation2
        target: drillingrig.mdot7
        property: "position.y"
        duration: 4000
        easing.type: Easing.InOutQuad
        to: 2.59
    }

    ParallelAnimation{
        id: backtongsOpen
        NumberAnimation{
            target: drillingrig.mdot8
            properties: "position.z"
            to: -252.17
            duration: 1500
            easing.type: Easing.InOutQuad
        }

        NumberAnimation {
            target: drillingrig.mdot9
            property: "position.z"
            duration: 1500
            to: -127
            easing.type: Easing.InOutQuad
        }
    }
    ParallelAnimation{
        id: backtongsClose
        NumberAnimation{
            target: drillingrig.mdot8
            properties: "position.z"
            to: -224.59
            duration: 1500
            easing.type: Easing.InOutQuad
        }

        NumberAnimation {
            target: drillingrig.mdot9
            property: "position.z"
            duration: 1500
            to: -157.74
            easing.type: Easing.InOutQuad
        }
    }
    ParallelAnimation{
        id: fronttongsOpen
        NumberAnimation{
            target: drillingrig.mdot018
            properties: "position.z"
            to: -252.17
            duration: 1500
            easing.type: Easing.InOutQuad
        }

        NumberAnimation {
            target: drillingrig.mdot019
            property: "position.z"
            duration: 1500
            to: -127
            easing.type: Easing.InOutQuad
        }
    }
    ParallelAnimation{
        id: fronttongsClose
        NumberAnimation{
            target: drillingrig.mdot018
            properties: "position.z"
            to: -224.59
            duration: 1500
            easing.type: Easing.InOutQuad
        }

        NumberAnimation {
            target: drillingrig.mdot019
            property: "position.z"
            duration: 1500
            to: -157.74
            easing.type: Easing.InOutQuad
        }
    }

    Timer{
        id: frameClock
        interval: 25
        repeat: true
        running: true
        property real m5Speed: config.m5Speed
        property real m6Speed: config.m6Speed
        property real m4RotSpeed: config.m4RotSpeed
        property real m7Speed: config.m7Speed
        property real m2Speed: config.m2Speed
        property real m3RotSpeed: config.m3RotSpeed
        property real m11Speed: config.m11Speed
        property real m1RotSpeed: config.m1RotSpeed
        property real m13Speed: config.m13Speed
        property real m14Speed: config.m14Speed
        property real m1413Speed: config.m1413Speed
        property real m12Speed: config.m12Speed
        property real m08Speed: config.m08Speed
        property date lastTime
        property bool m2follow: false
        property bool firstEnter: true
        function onPush(){
            let interval = Math.abs(lastTime.getTime() - new Date().getTime());
            if(Object.is(interval, NaN)){
                interval = frameClock.interval;
            }

            if(favorite.do18){      //托钻杆升2
                if(drillingrig.mdot5.y < drillingrig.mdot2.y){
                    drillingrig.mdot5.y += m5Speed * (interval / 1000);
                }
            }
            if(favorite.do19){      //托钻杆降2
                if(drillingrig.mdot5.y > 416){
                    drillingrig.mdot5.y -= m5Speed * (interval / 1000);
                }
            }

            if(favorite.do35){      //机械手伸
                if(drillingrig.mdot7.position.y < 511){
                    drillingrig.mdot7.position.y += m7Speed * (interval / 1000);
                    if(drillingrig.mdot7.position.y >= 511){
                        if(Math.abs(drillingrig.mdot4.eulerRotation.z + 105) < 0.5){
                            view3d.canTakeDrill = false;
                            view3d.takedDrill = true;
                        }
                        else if(Math.abs(drillingrig.mdot4.eulerRotation.z - 95) < 0.5){
                            view3d.takedDrill = false;
                            view3d.dropDrill = true;
                        }
                    }
                }
            }
            if(favorite.do34){      //机械手缩
                if(drillingrig.mdot7.position.y > 2.59){
                    drillingrig.mdot7.position.y -= m7Speed * (interval / 1000);
                }
            }
            if(favorite.do29){      //推进架升
                if(drillingrig.mdot2.position.y < 680){
                    drillingrig.mdot2.position.y += m2Speed * (interval / 1000);
                }
            }
            if(favorite.do28){      //推进架降
                if(drillingrig.mdot2.position.y > 374){
                    drillingrig.mdot2.position.y -= m2Speed * (interval / 1000);
                }
            }            
            if(favorite.do46){      //钻杆框降
                if(drillingrig.mdot12.position.y > 645){
                    drillingrig.mdot12.position.y -= m12Speed * (interval / 1000);
                }
            }
            if(favorite.do47){      //钻杆框升
                if(drillingrig.mdot12.position.y < 735){
                    drillingrig.mdot12.position.y += m12Speed * (interval / 1000);
                }
            }
            if(m2follow){   //托盘高度跟踪
                drillingrig.mdot5.position.y = drillingrig.mdot2.position.y;
            }
            lastTime.setTime(new Date().getTime());
        }
        function onPull(){
            let interval = Math.abs(lastTime.getTime() - new Date().getTime());
            if(Object.is(interval, NaN)){
                interval = frameClock.interval;
            }
            if(favorite.do18){      //托钻杆升2
                if(drillingrig.mdot5.y < drillingrig.mdot2.y){
                    drillingrig.mdot5.y += m5Speed * (interval / 1000);
                }
            }
            if(favorite.do19){      //托钻杆降2
                if(drillingrig.mdot5.y > 443){
                    drillingrig.mdot5.y -= m5Speed * (interval / 1000);
                }
            }
            if(favorite.do35){      //机械手伸
                if(drillingrig.mdot7.position.y < 511){
                    drillingrig.mdot7.position.y += m7Speed * (interval / 1000);
                }

            }
            if(favorite.do34){      //机械手缩
                if(drillingrig.mdot7.position.y > 2.59){
                    drillingrig.mdot7.position.y -= m7Speed * (interval / 1000);
                }
            }
            if(favorite.do29){      //推进架升
                if(drillingrig.mdot2.position.y < 680){
                    drillingrig.mdot2.position.y += m2Speed * (interval / 1000);
                }
            }
            if(favorite.do28){      //推进架降
                if(drillingrig.mdot2.position.y > 443){
                    drillingrig.mdot2.position.y -= m2Speed * (interval / 1000);
                }
            }
            if(favorite.do46){      //钻杆框降
                if(drillingrig.mdot12.position.y > 645){
                    drillingrig.mdot12.position.y -= m12Speed * (interval / 1000);
                }
            }
            if(favorite.do47){      //钻杆框升
                if(drillingrig.mdot12.position.y < 735){
                    drillingrig.mdot12.position.y += m12Speed * (interval / 1000);
                }
            }
            if(m2follow){   //托盘高度跟踪
                drillingrig.mdot5.position.y = drillingrig.mdot2.position.y;
            }
            lastTime.setTime(new Date().getTime());
        }
        function onManual(){
            let interval = Math.abs(lastTime.getTime() - new Date().getTime());
            if(Object.is(interval, NaN)){
                interval = frameClock.interval;
            }

            if(favorite.do18){      //托钻杆升2
                if(drillingrig.mdot5.y < drillingrig.mdot2.y){
                    drillingrig.mdot5.y += m5Speed * (interval / 1000);
                }
            }
            if(favorite.do19){      //托钻杆降2
                if(drillingrig.mdot5.y > 443){
                    drillingrig.mdot5.y -= m5Speed * (interval / 1000);
                }
            }
            if(favorite.do52){      //钻杆右移
                if(drillingrig.mdot6.x > -320){
                    drillingrig.mdot6.x -= m6Speed * (interval / 1000);
                }
            }
            if(favorite.do53){      //钻杆左移
                if(drillingrig.mdot6.x < 166){
                    drillingrig.mdot6.x += m6Speed * (interval / 1000);
                }
            }
            if(favorite.do50){      //机械手后旋
                if(drillingrig.mdot4.eulerRotation.z > -120){
                    drillingrig.mdot4.eulerRotation.z -= m4RotSpeed * (interval / 1000);
                }
            }
            if(favorite.do51){      //机械手前旋
                //放钻过程
                if(drillingrig.mdot4.eulerRotation.z < 95){
                    drillingrig.mdot4.eulerRotation.z += m4RotSpeed * (interval / 1000);
                }
            }
            if(favorite.do35){      //机械手伸
                //放钻过程
                if(drillingrig.mdot7.position.y < 480){
                    drillingrig.mdot7.position.y += m7Speed * (interval / 1000);
                }
            }
            if(favorite.do34){      //机械手缩
                if(drillingrig.mdot7.position.y > 2.59){
                    drillingrig.mdot7.position.y -= m7Speed * (interval / 1000);
                }
            }
            if(favorite.do29){      //推进架升
                if(drillingrig.mdot2.position.y < 680){
                    drillingrig.mdot2.position.y += m2Speed * (interval / 1000);
                }
            }
            if(favorite.do28){      //推进架降
                if(drillingrig.mdot2.position.y > 443){
                    drillingrig.mdot2.position.y -= m2Speed * (interval / 1000);
                }
            }

            if(favorite.do46){      //钻杆框降
                if(drillingrig.mdot12.position.y > 645){
                    drillingrig.mdot12.position.y -= m12Speed * (interval / 1000);
                }
            }

            if(favorite.do47){      //钻杆框升
                if(drillingrig.mdot12.position.y < 735){
                    drillingrig.mdot12.position.y += m12Speed * (interval / 1000);
                }
            }

            if(favorite.do48){      //支撑油缸松
                if(drillingrig.mdot13.position.x <= 330){
                    drillingrig.mdot13.position.x += m1413Speed * (interval / 1000);
                }
                if(drillingrig.mdot14.position.x > -364){
                    drillingrig.mdot14.position.x -= m1413Speed * (interval / 1000);
                }
            }

            if(favorite.do49){      //支撑油缸夹
                if(drillingrig.mdot13.position.x > 270){
                    drillingrig.mdot13.position.x -= m1413Speed * (interval / 1000);
                }
                if(drillingrig.mdot14.position.x < -304){
                    drillingrig.mdot14.position.x += m1413Speed * (interval / 1000);
                }
            }

            if(favorite.do43){      //前夹持开
                fronttongsOpen.start();
            }

            if(favorite.do42){      //前夹持合
                fronttongsClose.start();
            }

            if(favorite.do41){      //后夹持开
                backtongsOpen.start();
            }

            if(favorite.do40){      //后夹持合
                backtongsClose.start();
            }

            if(m2follow){   //托盘高度跟踪
                drillingrig.mdot5.position.y = drillingrig.mdot2.position.y;
            }
            lastTime.setTime(new Date().getTime());
        }
        onTriggered: {
            if(view3d.pushDrill){
                onPush();
            }
            else if(view3d.pullDrill){
                onPull();
            }
            else{
                onManual();
            }
        }
    }
    Connections{
        target: attributes
        function onRegisterUpdated(address:int, bit:int, bv:bool){
            switch(address){
            case 66:
                if(bv){
                    switch(bit){
                    case 0:
                        interaction.logReport(qsTr("钻杆框升到顶"), 0);
                        drillingrig.mdot12.position.y = 734;
                        break;
                    case 1:
                        interaction.logReport(qsTr("钻杆框降到底"), 0);
                        drillingrig.mdot12.position.y = 645;
                        break;
                    case 2:
                        interaction.logReport(qsTr("退钻卸后扣位置"), 0);
                        break;
                    case 3:
                        interaction.logReport(qsTr("托钻杆下降"), 0);
                        break;
                    case 4:
                        interaction.logReport(qsTr("托钻杆上升"), 0);
                        break;
                    case 5:
                        interaction.logReport(qsTr("抓手到机架"), 0);
                        break;
                    case 6:
                        interaction.logReport(qsTr("钻杆框升"), 0);
                        break;

                    case 8:
                        interaction.logReport(qsTr("钻杆框降"), 0);
                        break;
                    case 9:
                        interaction.logReport(qsTr("抓臂伸展"), 0);
                        drillingrig.mdot7.position.y = 511;
                        break;
                    case 11:
                        interaction.logReport(qsTr("托盘最前杆检测"), 0);
                        break;
                    case 12:
                        interaction.logReport(qsTr("托盘最后杆检测"), 0);
                        break;
                    case 13:
                        interaction.logReport(qsTr("抓臂缩到底"), 0);
                        drillingrig.mdot7.position.y = 2.59;
                        break;
                    case 14:
                        interaction.logReport(qsTr("托钻杆左移"), 0);
                        drillingrig.mdot6.position.x = 166;
                        break;
                    case 15:
                        interaction.logReport(qsTr("托钻杆右移"), 0);
                        drillingrig.mdot6.position.x = -320;
                        break;
                    default:
                        break;
                    }
                }
                else{

                }
                break;
            }
        }
    }

    // Timer{
    //     running: true
    //     interval: 5000
    //     repeat: true
    //     onTriggered: {
    //         // console.log("\n");
    //         // console.log("(favorite.enc1 - Math.min(favorite.enc1L7, favorite.enc1L1)) / Math.abs(favorite.enc1L7 - favorite.enc1L1) * 230 +(-135)");
    //         // console.log("enc1: " + favorite.enc1);
    //         // console.log("l1: " + favorite.enc1L7);
    //         // console.log("l7: " + favorite.enc1L1);
    //         // let angle = (favorite.enc1 - Math.min(favorite.enc1L7, favorite.enc1L1)) / Math.abs(favorite.enc1L7 - favorite.enc1L1) * 230 + (-135);
    //         // console.log("angle: " + angle);

    //         console.log("\n");
    //         console.log("Math.abs(favorite.enc3 - Math.min(config.enc3Max, config.enc3Min)) / Math.abs(config.enc3Max - config.enc3Min) * 135");
    //         console.log("current: " + favorite.enc3);
    //         console.log("max: " + config.enc3Max);
    //         console.log("min: " + config.enc3Min);
    //         let angle = Math.abs(favorite.enc3 - Math.min(config.enc3Max, config.enc3Min)) / Math.abs(config.enc3Max - config.enc3Min) * 135;
    //         console.log("rate: " + angle);
    //         let rot = -45 + angle;
    //         console.log("distance: " + rot);
    //     }
    // }
    Connections{
        target:drillingrig.mdot4
        function onEulerRotationChanged(){
            if(view3d.pushDrill){
                if(Math.abs(drillingrig.mdot4.eulerRotation.z - 95) < 0.5
                        && drillingrig.mdot7.position.y >= 510){
                    view3d.takedDrill = false;
                    drillingrig.mg_4.position.x = 543;
                    view3d.dropDrill = true;
                }
                else if(Math.abs(drillingrig.mdot4.eulerRotation.z - 105)  < 0.5
                        && drillingrig.mdot7.position.y >= 510){
                    view3d.takedDrill = true;
                    view3d.canTakeDrill = false;
                }
            }
            else if(view3d.pullDrill){
                if(Math.abs(drillingrig.mdot4.eulerRotation.z - 95) < 0.5
                        && drillingrig.mdot7.position.y >= 510){
                    view3d.dropDrill = false;
                    view3d.takedDrill = true;
                }
                else if(Math.abs(drillingrig.mdot4.eulerRotation.z - 105) < 0.5
                        && drillingrig.mdot7.position.y >= 510){
                    view3d.canTakeDrill = true;
                    view3d.takedDrill = false;
                }
            }
        }
    }

    Connections{
        target: interaction
        function onIsConnectedChanged(){
            if(interaction.isConnected){
                drillingrig.mdot1.eulerRotation.z = Qt.binding(()=>{ return 95 - (favorite.enc2 - Math.min(config.enc2Max, config.enc2Min)) / Math.abs(config.enc2Max - config.enc2Min) * 148; });
                drillingrig.mdot4.eulerRotation.z = Qt.binding(
                            ()=>{
                                let angle = 95 - (favorite.enc1 - Math.min(favorite.enc1L7, favorite.enc1L1)) / Math.abs(favorite.enc1L7 - favorite.enc1L1) * 200;
                                if(angle > 95){
                                    angle = 95;
                                }
                                else if(angle < -105){
                                    angle = -105.5;
                                }
                                return angle;
                            });
                drillingrig.mdot11.position.x = Qt.binding(
                            ()=>{
                                let current = Math.abs(favorite.ai9 - Math.min(favorite.headMin, favorite.headMax)) / Math.abs(favorite.headMax - favorite.headMin) * 550;
                                return 60 - current;
                            });
                drillingrig.mdot3.eulerRotation.z = Qt.binding(
                            ()=>{
                                let current = Math.abs(favorite.enc3 - Math.min(config.enc3Max, config.enc3Min)) / Math.abs(config.enc3Max - config.enc3Min) * 135;
                                return 90 - current;
                            });

            }
            else{
                drillingrig.mdot1.eulerRotation.z = 0;
                drillingrig.mdot4.eulerRotation.z = 0;
                drillingrig.mdot11.position.x = -450;
                drillingrig.mdot3.eulerRotation.z = 0;
            }
        }
    }
    Connections{
        id: mdot11Conn
        target: drillingrig.mdot11
        property real lastX: -489.13
        function onPositionChanged(){
            // let position = drillingrig.mdot11.position;
            // let wp = drillingrig.mdot11.mapPositionToScene(position);
            // let wp2 = drillingrig.mg_4.mapPositionToScene(drillingrig.mg_4.position);
            // let dis = Math.abs(wp.length() - wp2.length());
            // if(dis > 40){

            // }

            let x = drillingrig.position.x;
            let r =  x - mdot11Conn.lastX;
            if(view3d.pushDrill){
                if(drillingrig.mdot11.position.x >= -340 && favorite.do62){
                    drillingrig.mg_3.position.x += r / drillingrig.mdot11.scale.x / drillingrig.mdot10.scale.x;
                    drillingrig.mg_4.position.x += r / drillingrig.mdot11.scale.x / drillingrig.mdot10.scale.x;
                    if(drillingrig.mg_4.position.x >= 1295){
                        view3d.dropDrill = false;
                        drillingrig.mg_3.position.x = 1351;
                        view3d.headDrill = true;
                    }
                }
            }
            else if(view3d.pullDrill){

            }
            mdot11Conn.lastX = x;
        }
    }

    View3D {
        id: view3D
        anchors.fill: parent
        environment: sceneEnvironment
        SceneEnvironment {
            id: sceneEnvironment
            antialiasingQuality: SceneEnvironment.High
            antialiasingMode: SceneEnvironment.MSAA
        }

        Node {
            id: scene
            PerspectiveCamera {
                id: sceneCamera
                position: Qt.vector3d(5656.69, 1703.16, -1393.91)
                clipFar: 50000
                fieldOfView: 30
                eulerRotation: Qt.vector3d(-14.936, -258.26, -2e-05)
                // onPositionChanged: {
                //     console.log("pos:" + position);
                //     console.log("rot:" + eulerRotation);
                // }
            }

            Drillingrig {
                id: drillingrig
                x: 132.559
                y: -22.931
                z: 394.06116
                //mdot1.eulerRotation.z: -45 + favorite.enc2 / Math.abs(config.enc2Max - config.enc2Min) * 135
                //mdot4.eulerRotation.z: -120 + favorite.enc1L1 / Math.abs(favorite.enc1L7 - favorite.enc1L1) * 230
                mg_2.visible: view3d.canTakeDrill
                mg_1.visible: view3d.takedDrill
                mg_3.visible: view3d.headDrill
                mg_4.visible: view3d.dropDrill
                ld_H.usedInBakedLighting: true
                ld_H.bakedLightmap: blm_drillingrig_ld_H
                ld_Q.usedInBakedLighting: true
                ld_Q.bakedLightmap: blm_drillingrig_ld_Q
                middle_3_1.usedInBakedLighting: true
                middle_3_1.bakedLightmap: blm_drillingrig_middle_3_1
                middle_3_2.usedInBakedLighting: true
                middle_3_2.bakedLightmap: blm_drillingrig_middle_3_2
                zj_Logo.usedInBakedLighting: true
                zj_Logo.bakedLightmap: blm_drillingrig_zj_Logo
                middle_3.usedInBakedLighting: true
                middle_3.bakedLightmap: blm_drillingrig_middle_3
                middle_2.usedInBakedLighting: true
                middle_2.bakedLightmap: blm_drillingrig_middle_2
                middle_1.usedInBakedLighting: true
                middle_1.bakedLightmap: blm_drillingrig_middle_1
                middle_4.usedInBakedLighting: true
                middle_4.bakedLightmap: blm_drillingrig_middle_4
                mg_1.usedInBakedLighting: true
                mg_1.bakedLightmap: blm_drillingrig_mg_1
                middle_5_2.usedInBakedLighting: true
                middle_5_2.bakedLightmap: blm_drillingrig_middle_5_2
                middle_5_1.usedInBakedLighting: true
                middle_5_1.bakedLightmap: blm_drillingrig_middle_5_1
                middle_5.usedInBakedLighting: true
                middle_5.bakedLightmap: blm_drillingrig_middle_5
                front_1.usedInBakedLighting: true
                front_1.bakedLightmap: blm_drillingrig_front_1
                front_3.usedInBakedLighting: true
                front_3.bakedLightmap: blm_drillingrig_front_3
                front_2_1.usedInBakedLighting: true
                front_2_1.bakedLightmap: blm_drillingrig_front_2_1
                front_2_2.usedInBakedLighting: true
                front_2_2.bakedLightmap: blm_drillingrig_front_2_2
                front_2.usedInBakedLighting: true
                front_2.bakedLightmap: blm_drillingrig_front_2
                ld_78.usedInBakedLighting: true
                ld_78.bakedLightmap: blm_drillingrig_ld_78
                ld_77.usedInBakedLighting: true
                ld_77.bakedLightmap: blm_drillingrig_ld_77
                ld_76.usedInBakedLighting: true
                ld_76.bakedLightmap: blm_drillingrig_ld_76
                ld_75.usedInBakedLighting: true
                ld_75.bakedLightmap: blm_drillingrig_ld_75
                ld_74.usedInBakedLighting: true
                ld_74.bakedLightmap: blm_drillingrig_ld_74
                ld_73.usedInBakedLighting: true
                ld_73.bakedLightmap: blm_drillingrig_ld_73
                ld_72.usedInBakedLighting: true
                ld_72.bakedLightmap: blm_drillingrig_ld_72
                ld_71.usedInBakedLighting: true
                ld_71.bakedLightmap: blm_drillingrig_ld_71
                ld_70.usedInBakedLighting: true
                ld_70.bakedLightmap: blm_drillingrig_ld_70
                ld_69.usedInBakedLighting: true
                ld_69.bakedLightmap: blm_drillingrig_ld_69
                ld_68.usedInBakedLighting: true
                ld_68.bakedLightmap: blm_drillingrig_ld_68
                ld_67.usedInBakedLighting: true
                ld_67.bakedLightmap: blm_drillingrig_ld_67
                ld_66.usedInBakedLighting: true
                ld_66.bakedLightmap: blm_drillingrig_ld_66
                ld_65.usedInBakedLighting: true
                ld_65.bakedLightmap: blm_drillingrig_ld_65
                ld_64.usedInBakedLighting: true
                ld_64.bakedLightmap: blm_drillingrig_ld_64
                ld_63.usedInBakedLighting: true
                ld_63.bakedLightmap: blm_drillingrig_ld_63
                ld_62.usedInBakedLighting: true
                ld_62.bakedLightmap: blm_drillingrig_ld_62
                ld_61.usedInBakedLighting: true
                ld_61.bakedLightmap: blm_drillingrig_ld_61
                ld_60.usedInBakedLighting: true
                ld_60.bakedLightmap: blm_drillingrig_ld_60
                ld_59.usedInBakedLighting: true
                ld_59.bakedLightmap: blm_drillingrig_ld_59
                ld_58.usedInBakedLighting: true
                ld_58.bakedLightmap: blm_drillingrig_ld_58
                ld_57.usedInBakedLighting: true
                ld_57.bakedLightmap: blm_drillingrig_ld_57
                ld_56.usedInBakedLighting: true
                ld_56.bakedLightmap: blm_drillingrig_ld_56
                ld_55.usedInBakedLighting: true
                ld_55.bakedLightmap: blm_drillingrig_ld_55
                ld_54.usedInBakedLighting: true
                ld_54.bakedLightmap: blm_drillingrig_ld_54
                ld_53.usedInBakedLighting: true
                ld_53.bakedLightmap: blm_drillingrig_ld_53
                ld_52.usedInBakedLighting: true
                ld_52.bakedLightmap: blm_drillingrig_ld_52
                ld_51.usedInBakedLighting: true
                ld_51.bakedLightmap: blm_drillingrig_ld_51
                ld_50.usedInBakedLighting: true
                ld_50.bakedLightmap: blm_drillingrig_ld_50
                ld_49.usedInBakedLighting: true
                ld_49.bakedLightmap: blm_drillingrig_ld_49
                ld_48.usedInBakedLighting: true
                ld_48.bakedLightmap: blm_drillingrig_ld_48
                ld_47.usedInBakedLighting: true
                ld_47.bakedLightmap: blm_drillingrig_ld_47
                ld_46.usedInBakedLighting: true
                ld_46.bakedLightmap: blm_drillingrig_ld_46
                ld_45.usedInBakedLighting: true
                ld_45.bakedLightmap: blm_drillingrig_ld_45
                ld_44.usedInBakedLighting: true
                ld_44.bakedLightmap: blm_drillingrig_ld_44
                ld_43.usedInBakedLighting: true
                ld_43.bakedLightmap: blm_drillingrig_ld_43
                ld_42.usedInBakedLighting: true
                ld_42.bakedLightmap: blm_drillingrig_ld_42
                ld_41.usedInBakedLighting: true
                ld_41.bakedLightmap: blm_drillingrig_ld_41
                ld_40.usedInBakedLighting: true
                ld_40.bakedLightmap: blm_drillingrig_ld_40
                ld_39.usedInBakedLighting: true
                ld_39.bakedLightmap: blm_drillingrig_ld_39
                ld_38.usedInBakedLighting: true
                ld_38.bakedLightmap: blm_drillingrig_ld_38
                ld_37.usedInBakedLighting: true
                ld_37.bakedLightmap: blm_drillingrig_ld_37
                ld_36.usedInBakedLighting: true
                ld_36.bakedLightmap: blm_drillingrig_ld_36
                ld_35.usedInBakedLighting: true
                ld_35.bakedLightmap: blm_drillingrig_ld_35
                ld_34.usedInBakedLighting: true
                ld_34.bakedLightmap: blm_drillingrig_ld_34
                ld_33.usedInBakedLighting: true
                ld_33.bakedLightmap: blm_drillingrig_ld_33
                ld_32.usedInBakedLighting: true
                ld_32.bakedLightmap: blm_drillingrig_ld_32
                ld_31.usedInBakedLighting: true
                ld_31.bakedLightmap: blm_drillingrig_ld_31
                ld_30.usedInBakedLighting: true
                ld_30.bakedLightmap: blm_drillingrig_ld_30
                ld_29.usedInBakedLighting: true
                ld_29.bakedLightmap: blm_drillingrig_ld_29
                ld_28.usedInBakedLighting: true
                ld_28.bakedLightmap: blm_drillingrig_ld_28
                ld_27.usedInBakedLighting: true
                ld_27.bakedLightmap: blm_drillingrig_ld_27
                ld_26.usedInBakedLighting: true
                ld_26.bakedLightmap: blm_drillingrig_ld_26
                ld_25.usedInBakedLighting: true
                ld_25.bakedLightmap: blm_drillingrig_ld_25
                ld_24.usedInBakedLighting: true
                ld_24.bakedLightmap: blm_drillingrig_ld_24
                ld_23.usedInBakedLighting: true
                ld_23.bakedLightmap: blm_drillingrig_ld_23
                ld_22.usedInBakedLighting: true
                ld_22.bakedLightmap: blm_drillingrig_ld_22
                ld_21.usedInBakedLighting: true
                ld_21.bakedLightmap: blm_drillingrig_ld_21
                ld_20.usedInBakedLighting: true
                ld_20.bakedLightmap: blm_drillingrig_ld_20
                ld_19.usedInBakedLighting: true
                ld_19.bakedLightmap: blm_drillingrig_ld_19
                ld_18.usedInBakedLighting: true
                ld_18.bakedLightmap: blm_drillingrig_ld_18
                ld_17.usedInBakedLighting: true
                ld_17.bakedLightmap: blm_drillingrig_ld_17
                ld_16.usedInBakedLighting: true
                ld_16.bakedLightmap: blm_drillingrig_ld_16
                ld_15.usedInBakedLighting: true
                ld_15.bakedLightmap: blm_drillingrig_ld_15
                ld_14.usedInBakedLighting: true
                ld_14.bakedLightmap: blm_drillingrig_ld_14
                ld_13.usedInBakedLighting: true
                ld_13.bakedLightmap: blm_drillingrig_ld_13
                ld_12.usedInBakedLighting: true
                ld_12.bakedLightmap: blm_drillingrig_ld_12
                ld_11.usedInBakedLighting: true
                ld_11.bakedLightmap: blm_drillingrig_ld_11
                ld_10.usedInBakedLighting: true
                ld_10.bakedLightmap: blm_drillingrig_ld_10
                ld_9.usedInBakedLighting: true
                ld_9.bakedLightmap: blm_drillingrig_ld_9
                ld_8.usedInBakedLighting: true
                ld_8.bakedLightmap: blm_drillingrig_ld_8
                ld_7.usedInBakedLighting: true
                ld_7.bakedLightmap: blm_drillingrig_ld_7
                ld_6.usedInBakedLighting: true
                ld_6.bakedLightmap: blm_drillingrig_ld_6
                ld_5.usedInBakedLighting: true
                ld_5.bakedLightmap: blm_drillingrig_ld_5
                ld_4.usedInBakedLighting: true
                ld_4.bakedLightmap: blm_drillingrig_ld_4
                ld_3.usedInBakedLighting: true
                ld_3.bakedLightmap: blm_drillingrig_ld_3
                ld_2.usedInBakedLighting: true
                ld_2.bakedLightmap: blm_drillingrig_ld_2
                ld_1.usedInBakedLighting: true
                ld_1.bakedLightmap: blm_drillingrig_ld_1
                body.usedInBakedLighting: true
                body.bakedLightmap: blm_drillingrig_body

                BakedLightmap {
                    id: blm_drillingrig_body
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_body"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_1
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_1"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_2
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_2"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_3
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_3"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_4
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_4"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_5
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_5"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_6
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_6"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_7
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_7"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_8
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_8"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_9
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_9"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_10
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_10"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_11
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_11"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_12
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_12"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_13
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_13"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_14
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_14"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_15
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_15"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_16
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_16"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_17
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_17"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_18
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_18"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_19
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_19"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_20
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_20"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_21
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_21"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_22
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_22"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_23
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_23"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_24
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_24"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_25
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_25"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_26
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_26"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_27
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_27"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_28
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_28"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_29
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_29"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_30
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_30"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_31
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_31"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_32
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_32"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_33
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_33"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_34
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_34"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_35
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_35"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_36
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_36"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_37
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_37"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_38
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_38"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_39
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_39"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_40
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_40"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_41
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_41"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_42
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_42"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_43
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_43"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_44
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_44"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_45
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_45"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_46
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_46"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_47
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_47"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_48
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_48"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_49
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_49"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_50
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_50"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_51
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_51"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_52
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_52"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_53
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_53"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_54
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_54"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_55
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_55"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_56
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_56"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_57
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_57"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_58
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_58"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_59
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_59"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_60
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_60"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_61
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_61"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_62
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_62"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_63
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_63"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_64
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_64"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_65
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_65"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_66
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_66"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_67
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_67"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_68
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_68"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_69
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_69"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_70
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_70"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_71
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_71"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_72
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_72"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_73
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_73"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_74
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_74"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_75
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_75"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_76
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_76"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_77
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_77"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_78
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_78"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_front_2
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_front_2"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_front_2_2
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_front_2_2"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_front_2_1
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_front_2_1"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_front_3
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_front_3"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_front_3177
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_front_3177"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_front_1
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_front_1"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_middle_5
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_middle_5"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_middle_5_1
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_middle_5_1"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_middle_5_2
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_middle_5_2"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_mg_1
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_mg_1"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_middle_4
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_middle_4"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_middle_1
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_middle_1"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_middle_2
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_middle_2"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_middle_3
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_middle_3"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_zj_Logo
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_zj_Logo"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_middle_3_2
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_middle_3_2"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_middle_3_1
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_middle_3_1"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_middle_3218
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_middle_3218"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_Q
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_Q"
                    enabled: true
                }

                BakedLightmap {
                    id: blm_drillingrig_ld_H
                    loadPrefix: "lightmaps"
                    key: "blm_drillingrig_ld_H"
                    enabled: true
                }
            }

            DirectionalLight {
                id: directionalLight1
                x: -3090.595
                y: 3262.831
                brightness: 2.69
                z: 0
                eulerRotation.z: -0.00002
                eulerRotation.y: -94.52711
                eulerRotation.x: -19.54004
                bakeMode: Light.BakeModeAll
            }

            DirectionalLight {
                id: directionalLight2
                x: 3067.18
                y: 2994.268
                brightness: 2.76
                z: 482.03381
                eulerRotation.z: -179.99998
                eulerRotation.y: 85.47289
                eulerRotation.x: -28.72632
                bakeMode: Light.BakeModeAll
            }

            PointLight {
                id: pointLight
                x: -242.243
                y: 411.614
                bakeMode: Light.BakeModeAll
                quadraticFade: 0.11731
                brightness: 4.5
                z: 1730.77258
            }
        }

        WasdController {
            id: wasdController
            anchors.fill: parent
            ySpeed: 0.15
            xSpeed: 0.15
            shiftSpeed: 4.5
            speed: 2
            controlledObject: sceneCamera
        }
    }
}
